home *** CD-ROM | disk | FTP | other *** search
-
-
- (*******************************************************************)
- (* *)
- (* Include File *)
- (* System User Entry, v. 0800am, sun, 28.Mar.87, Glen Ellis *)
- (* *)
- (*******************************************************************)
-
-
- (* *)
- (*
- (* purpose:
- (* accept user data as if from commandline.
- (* operates as if for single source file.
- (* if no filename entry,
- (* then enable documentation
- (*
- (* *)
-
-
-
- (*---------------------------------------------------------------*)
-
- begin (* INCLUDE *)
-
- (*---> Header *)
- pClearScreen; (* SysScr.inc *)
-
- (*-----------------------------------------------------------------*)
- (* Apple IIe with CPM v.2.23, "60K", has funny clear screen bug. *)
- (* Mod for CP/M system file is available from author, *)
- (* but so is the simple work-around procedure "pClearScreen". *)
- (* *)
- (* other bugs from author: *)
- (* Apple CPM with Sider Hard Drive system (modified CP/M ) has bug.*)
- (* Mod for CPM.SYS is available to correct I/O problem *)
- (* CP/M 2.23 Apple/CPM version, for Reader and Punch devices. *)
- (*-----------------------------------------------------------------*)
-
- gotoxy(03,05);
- writeln('-------------------------');
- gotoxy(03,06);
- writeln('System User Input Module ');
-
- (*---> #1 parameter *)
-
- IF (SysCmdUser) and (SysCmdUserFile) then (* fetch it *)
- begin
-
- SysInFileName := ' ';
-
- (* force user filename entry *)
- REPEAT
-
- gotoxy(03,08);
- writeln
- ('Enter Source Filename or "?" for Documentation screens.');
- gotoxy(03,09);
- write(' Enter : '); readln(SysInfileName);
-
- (* accept <CR> entry for 'documentation' selection *)
- if (length(SysInFileName) = 0 )
- then SysInFileName := '?';
-
- UNTIL SysInFileName > ' ' ;
-
- IF (SysInFileName = '?') then
- begin
- SysCmdUser := false;
- SysInFileName := 'Documentation';
- (* always for single file mode *)
- end;
-
- (* Single file mode defaults *)
- SysInSource[1] := SysInFilename;
- SysInSourceCnt := 0;
- SysInSourceMax := 1; (* only for compatibility *)
-
- end; (* IF (SysCmdUser) and (SysCmdUserFile) then (* fetch it *)
-
-
- (*--------------------------------*)
-
- IF (SysCmdUser) and (SysCmdUserParm) then
- begin (* SysCmdUser *)
-
-
- (*---> # 2 parameter *) (* Indent *)
-
- SysIndentNum := 0;
- Repeat
-
- (* since, indent procedure does not accept 0, use it for flag. *)
- SysIndentNum := 0;
-
- gotoxy(03,10);
- writeln('Left Margin Indent Tab Length > 0.');
- gotoxy(03,11);
- write(' Enter IndentNum, <CR> = 3 : ');
- readln(SysIndentNum);
-
- (* accept <CR> entry as default #3 *)
- (* if no entry, they int.var unchanged *)
- if (SysIndentNum < 1) then SysIndentNum := 3;
-
- Until (SysIndentNum > 0) and (SysIndentNum < 80);
-
- SysIndent := true;
- SysIndentPos := 0;
-
-
- (*---> #3 parameter *) (* Comment *)
-
- gotoxy(03,12);
- writeln('Comment Lines to be Included.');
- gotoxy(03,13);
- write(' Enter <Y/N> <CR=Y> : ');
- readln(SysCharEntry);
-
- SysComment := true ; (* default *)
-
- IF (length(SysCharEntry) > 0)
- then
- IF (upcase(SysCharEntry) = 'N')
- then
- SysComment := false;
-
-
- (*---> #4 parameter *) (* LineCnt *)
-
- gotoxy(03,14);
- writeln('Line Counter.');
- gotoxy(03,15);
- write(' Enter <Y/N> <CR=N> : ');
- readln(SysCharEntry);
-
- SysLineCnt := false; (* default *)
- SysLenMax := 79;
-
- IF (length(SysCharEntry) > 0)
- then
- IF (upcase(SysCharEntry) = 'Y')
- then
- begin
- SysLineCnt := true;
- SysLenMax := 75;
- end;
-
-
- (*---> #5 parameter *) (* Vertiate *)
-
- gotoxy(03,16);
- writeln('Vertical Line Connections.');
- gotoxy(03,17);
- write(' Enter <Y/N> <CR=N> : ');
- readln(SysCharEntry);
-
- SysVertiate := false; (* default *)
-
- IF (length(SysCharEntry) > 0) then
- IF (upcase(SysCharEntry) = 'Y') then SysVertiate := true;
-
-
- (*---> #6 paramter *) (* Tracer *)
-
- gotoxy(03,18);
- writeln('Special Programmer Tracer Displays.');
- gotoxy(03,19);
- write(' Enter (Y/N) <CR=N> : ');
- readln(SysCharEntry);
-
- SysPgmTrace := false; (* default *)
-
- IF (length(SysCharEntry) > 0) then
- IF (upcase(SysCharEntry) = 'Y') then SysPgmTrace := true;
-
- (*---> #7 paramter *) (* PgmMod *)
-
- gotoxy(03,20);
- writeln('Force the System Pgm Mode : <DB> <TP>');
- gotoxy(03,21);
- write ('Enter selection, <CR> = normal parse : ');
- readln(SysPgmMod);
-
- IF (length(SysPgmMod) > 0) then
- begin
- case (upcase(SysPgmMod[1])) of
- 'D' : SysPgmMod := 'DB';
- 'T' : SysPgmMod := 'TP';
- else
- begin
- gotoxy(03,21);
- writeln(' Unknown : defaulted to normal. ');
- SysPgmMod := ' ';
- end;
- end;
- end
- else
- begin
- gotoxy(03,21);
- writeln(' Defaulted to normal');
- SysPgmMod := ' ';
- pDelay1;
- end;
-
- gotoxy(03,22);
- writeln(' SysPgmMod = :',SysPgmMod,':');
- if SysPgmMod = ' ' then writeln('Filename.TYP Parse enabled');
-
- end; (* IF (SysCmdUser) and (SysCmdUserParm) then (* fetch them *)
-
- writeln;
-
- writeln('--------------------------------------');
- writeln;
- pDelay2;
-
- end; (* INCLUDE *)
-
- (*******************************************************************)
- (*<<<>>>*)